1. Field of the Invention
The present invention relates to a software generating device which conventional modules (program parts) are recycled.
2. Description of the Prior Art
Software (program) is to be developed, a functional specification form is analyzed first. Next, functional specifications are designed (basic design). Detail design for realizing the function designed by the basic design is performed. Coding is performed by using a predetermined development language. The software is developed through the steps described above.
For this reason, a fault (error) of the software may be frequently incorporated in the detail design or the coding. For example, during the detail design, a logic (flow chart) including a fault is designed, and coding is performed while the logic includes the fault. At this time, a program which does not operate or a program which is not matched with the function may be formed.
When a fault is included during coding, and a program formed by the coding is compiled, the program may not operate, or the expected function may not be realized.
For this reason, a fault is detected, development must be restarted from the step in which the fault is included. Therefore, an improvement in productivity cannot be achieved.
The number of steps in development in detail design or coding varies depending on the skills of a programmer. This variation may adversely affect the quality of software.
In contrast to this, a technique which achieves an improvement in productivity or quality independently of the skills of a programmer by recycling conventional modules stored in a database is known as one technique for solving the above problem.
For example, in Japanese Patent Application Laid-Open No. 2-105222, a software generating device (xe2x80x9cPrior Art 1xe2x80x9d) for recycling conventional software to automatically generate software which is matched with specifications is disclosed. According to Prior Art 1, the corresponding relationship between modules which are adversely affected by a change in specification of the software becomes clear. For this reason, Prior Art 1 can easily cope with the change in specification of the software or addition of a specification.
In Japanese Patent Application Laid-Open No. 6-214768, a program automatic generating method (xe2x80x9cPrior Art 2xe2x80x9d) is disclosed. In Prior Art 2, when a conventional program is recycled, processing objects in units of functions obtained by a function division result of the specifications of the conventional program and processing modules are used as one combination to generate a program. Modules in the generated program are retrieved, and a plurality of retrieved modules are synthesized with each other to generate a new program. According to Prior Art 2, a programmer can easily retrieve a target processing module from the conventional program regardless of the skills or development experiences of the programmer, and a program having newly required specifications can be efficiently generated by using a conventional program.
However, in the prior arts (Prior Art 1 and Prior Art 2) when a new program is generated, retrieval objects of conventional modules (program parts) are limited. More specifically, only modules stored in the database of our own computer are retrieved, and modules required for generation of a new program are used. For this reason, modules developed in another computer, e.g., another section or another project cannot be incorporated, and development efficiency cannot be improved.
In the prior arts, pieces of specification information must be described in all the modules, and only limited modules (i.e., modules having specifications which agree with each other) can be recycled. For this reason, an improvement in development efficiency of software is limited.
It is an object of the present invention to provide a software generating device which can recycle modules developed by another computer or the like and can use modules having different specifications.
The first aspect of the present invention is a software generating device for generating new software by a plurality of modules, including a extraction unit analyzing specifications of software to extract a necessary module, and a retrieval unit checking whether the modules are stored in our own device and executing a retrieving process of the modules for another device connected through a network if the modules are not stored in our own device (corresponding to claim 1).
According to the first aspect of the present invention, since a retrieval result of modules held by the other device can be used, the modules developed in the other device can be used.
In this case, the modules are, e.g., modules (e.g., Java applets or the like) or a group of modules. In addition, software is a module or a group of modules for realizing a certain function. The software includes an application, an operation system (OS), and the like.
The network is an internet, a LAN, a WAN, or the like. The other device is a computer such as a server, a personal computer functioning as a server or a client, a workstation, or a server machine.
The second aspect of the present invention is a software generating device for generating new software by a plurality of modules, including a extraction unit analyzing specifications of software to extract necessary modules, a division unit checking whether the modules are stored in our own device and dividing the specifications if the modules are not stored in our own device, and a retrieval unit executing a retrieving process of the modules on the basis of the divided specifications.
According to the second aspect, the following configuration can be employed. That is, the specifications are divided when our own device has no necessary module, and the corresponding module is retrieved.
According to the software generating device according to the present invention, modules developed by another computer or the like can be recycled, and even modules having different specifications can be used.